// Copyright 2000-2024 JetBrains s.r.o. and contributors. Use of this source code is governed by the Apache 2.0 license.

package org.jetbrains.kotlin.idea.maven.configuration;

import com.intellij.testFramework.TestDataPath;
import org.jetbrains.kotlin.idea.base.plugin.KotlinPluginMode;
import org.jetbrains.kotlin.idea.base.test.TestRoot;
import org.jetbrains.kotlin.idea.test.JUnit3RunnerWithInners;
import org.jetbrains.kotlin.idea.test.KotlinTestUtils;
import org.jetbrains.kotlin.test.TestMetadata;
import org.junit.runner.RunWith;

/**
 * This class is generated by {@link org.jetbrains.kotlin.testGenerator.generator.TestGenerator}.
 * DO NOT MODIFY MANUALLY.
 */
@SuppressWarnings("all")
@TestRoot("maven/tests")
@TestDataPath("$CONTENT_ROOT")
@RunWith(JUnit3RunnerWithInners.class)
@TestMetadata("testData/configurator/jvm")
public class MavenConfigureProjectByChangingFileTestGenerated extends AbstractMavenConfigureProjectByChangingFileTest {
    @java.lang.Override
    @org.jetbrains.annotations.NotNull
    public final KotlinPluginMode getPluginMode() {
        return KotlinPluginMode.K1;
    }

    private void runTest(String testDataFilePath) throws Exception {
        KotlinTestUtils.runTest(this::doTestWithMaven, this, testDataFilePath);
    }

    @TestMetadata("fixExisting")
    public void testFixExisting() throws Exception {
        runTest("testData/configurator/jvm/fixExisting/");
    }

    @TestMetadata("jreLib")
    public void testJreLib() throws Exception {
        runTest("testData/configurator/jvm/jreLib/");
    }

    @TestMetadata("jvmVersion11InheritanceFromJava")
    public void testJvmVersion11InheritanceFromJava() throws Exception {
        runTest("testData/configurator/jvm/jvmVersion11InheritanceFromJava/");
    }

    @TestMetadata("jvmVersion1_8InheritanceFromJava")
    public void testJvmVersion1_8InheritanceFromJava() throws Exception {
        runTest("testData/configurator/jvm/jvmVersion1_8InheritanceFromJava/");
    }

    @TestMetadata("jvmVersion8InheritanceFromJava")
    public void testJvmVersion8InheritanceFromJava() throws Exception {
        runTest("testData/configurator/jvm/jvmVersion8InheritanceFromJava/");
    }

    @TestMetadata("libraryMissing")
    public void testLibraryMissing() throws Exception {
        runTest("testData/configurator/jvm/libraryMissing/");
    }

    @TestMetadata("pluginMissing")
    public void testPluginMissing() throws Exception {
        runTest("testData/configurator/jvm/pluginMissing/");
    }

    @TestMetadata("simpleProject")
    public void testSimpleProject() throws Exception {
        runTest("testData/configurator/jvm/simpleProject/");
    }

    @TestMetadata("simpleProjectBeta")
    public void testSimpleProjectBeta() throws Exception {
        runTest("testData/configurator/jvm/simpleProjectBeta/");
    }

    @TestMetadata("simpleProjectDev")
    public void testSimpleProjectDev() throws Exception {
        runTest("testData/configurator/jvm/simpleProjectDev/");
    }

    @TestMetadata("simpleProjectMilestone")
    public void testSimpleProjectMilestone() throws Exception {
        runTest("testData/configurator/jvm/simpleProjectMilestone/");
    }

    @TestMetadata("simpleProjectReleaseCandidate")
    public void testSimpleProjectReleaseCandidate() throws Exception {
        runTest("testData/configurator/jvm/simpleProjectReleaseCandidate/");
    }

    @TestMetadata("simpleProjectSnapshot")
    public void testSimpleProjectSnapshot() throws Exception {
        runTest("testData/configurator/jvm/simpleProjectSnapshot/");
    }

    @TestMetadata("withExistingDefaultCompile")
    public void testWithExistingDefaultCompile() throws Exception {
        runTest("testData/configurator/jvm/withExistingDefaultCompile/");
    }

    @TestMetadata("withExistingTestCompile")
    public void testWithExistingTestCompile() throws Exception {
        runTest("testData/configurator/jvm/withExistingTestCompile/");
    }

    @TestMetadata("withJava9ModuleInfo")
    public void testWithJava9ModuleInfo() throws Exception {
        runTest("testData/configurator/jvm/withJava9ModuleInfo/");
    }
}
